home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 February: Technology Seed / Mac Tech Seed Feb '97.toast / ODF Release 3 / ODFDev / ODF / OS / FWGraphx / SLGConst.k < prev    next >
Encoding:
Text File  |  1996-12-16  |  7.5 KB  |  244 lines  |  [TEXT/MPS ]

  1. //========================================================================================
  2. //
  3. //    File:                SLGConst.k
  4. //    Release Version:    $ ODF 3 $
  5. //
  6. //    Copyright:    (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  7. //
  8. //========================================================================================
  9.  
  10. #ifndef SLGCONST_K
  11. #define SLGCONST_K
  12.  
  13. //========================================================================================
  14. //    Inks
  15. //========================================================================================
  16.  
  17. enum FW_EStandardInks
  18. {
  19.     FW_kNormalInk,
  20.     FW_kNormalTextInk,
  21.     FW_kInvertInk,
  22.     FW_kWhiteEraseInk
  23. };
  24.  
  25. //========================================================================================
  26. //    Style dash kinds
  27. //========================================================================================
  28.  
  29. enum FW_EStyleDash
  30. {
  31.     FW_kSolidLine             = 0x0000,
  32.  
  33.     FW_kDash                 = 0x0001,
  34.     FW_kDot                 = 0x0002,
  35.     FW_kDashDot             = 0x0003,
  36.     FW_kDashDotDot             = 0x0004,
  37.     
  38.     FW_kOpaque                 = 0x0100,
  39.     
  40.     FW_kDashOpaque            = FW_kDash            + FW_kOpaque,
  41.     FW_kDotOpaque            = FW_kDot            + FW_kOpaque,
  42.     FW_kDashDotOpaque        = FW_kDashDot        + FW_kOpaque,
  43.     FW_kDashDotDotOpaque    = FW_kDashDotDot    + FW_kOpaque
  44. };
  45.  
  46. //========================================================================================
  47. //    Styles
  48. //========================================================================================
  49.  
  50. enum FW_EStandardStyles
  51. {
  52.     FW_kNormalStyle,
  53.     FW_kDashStyle,
  54.     FW_kDotStyle,
  55.     FW_kDashDotStyle,
  56.     FW_kDashDotDotStyle
  57. };
  58.  
  59. //========================================================================================
  60. //    Fonts
  61. //========================================================================================
  62.  
  63. enum FW_EStandardFonts
  64. {
  65.     FW_kNormalFont,
  66.     FW_kSystemFont,
  67.     FW_kHelvetica12,
  68.     FW_kTimes12,
  69.     FW_kCourier12,
  70.     FW_kPalatino12
  71. };
  72.  
  73. //========================================================================================
  74. //    Font Style
  75. //========================================================================================
  76.  
  77. typedef unsigned short FW_FontStyle;
  78.  
  79. const FW_FontStyle    FW_kPlain             = 0x0000;
  80. const FW_FontStyle    FW_kBold             = 0x0001;
  81. const FW_FontStyle    FW_kItalic             = 0x0002;
  82. const FW_FontStyle    FW_kUnderline         = 0x0004;
  83. const FW_FontStyle    FW_kOutline         = 0x0008;
  84. const FW_FontStyle    FW_kShadow             = 0x0010;
  85. const FW_FontStyle    FW_kCondensed         = 0x0020;
  86. const FW_FontStyle    FW_kExtended         = 0x0040;
  87. const FW_FontStyle    FW_kStrikeOut         = 0x0080;
  88.  
  89. //========================================================================================
  90. //    Transfer Modes
  91. //========================================================================================
  92.  
  93. typedef unsigned long FW_TransferModes;
  94.  
  95. const FW_TransferModes FW_kCopy            =    0xFFFF0000;
  96. const FW_TransferModes FW_kNotCopy         =    0xFFFF0001;
  97. const FW_TransferModes FW_kOr            =    0xFFFF0002;
  98. const FW_TransferModes FW_kNotOr        =    0xFFFF0003;
  99. const FW_TransferModes FW_kXOr            =    0xFFFF0004;
  100. const FW_TransferModes FW_kNotXOr        =    0xFFFF0005;
  101. const FW_TransferModes FW_kClear        =    0xFFFF0006;
  102. const FW_TransferModes FW_kNotClear        =    0xFFFF0007;
  103. const FW_TransferModes FW_kHilite        =    0xFFFF0008;
  104. const FW_TransferModes FW_kErase        =    0xFFFF0009;    // 'Special' Transfer Mode
  105. const FW_TransferModes FW_kInvert        =    0xFFFF000A;    // 'Special' Transfer Mode
  106. const FW_TransferModes FW_kSystemHilite    =    0xFFFF000B;
  107.  
  108. const unsigned long FW_kPrivLastTransferMode = FW_kSystemHilite;
  109.  
  110. //========================================================================================
  111. //    Rendering Verbs
  112. //========================================================================================
  113.  
  114. enum FW_ERenderVerbs
  115. {
  116.     FW_kNoRendering,
  117.     FW_kFrame,
  118.     FW_kFill
  119. };
  120.  
  121. //========================================================================================
  122. //    Single-line Text Alignment Options
  123. //========================================================================================
  124.  
  125. typedef unsigned short FW_TextAlignment;
  126.  
  127. enum
  128. {
  129.     // Horizontal alignment
  130.     FW_kTextAlignLeft                        =    0x0000,        // default
  131.     FW_kTextAlignRight                        =    0x0001,
  132.     FW_kTextAlignHCenter                    =    0x0002,
  133.     
  134.     FW_kPrivTextAlignHorzAlignMask            =    0x000F,
  135.  
  136.     // Vertical alignment
  137.     FW_kTextAlignTop                        =    0x0000,        // default
  138.     FW_kTextAlignBottom                        =    0x0010,
  139.     FW_kTextAlignBaseLine                    =    0x0020,
  140.     FW_kTextAlignVCenter                    =    0x0040,
  141.     
  142.     FW_kPrivTextAlignVertAlignMask            =    0x00F0,
  143.     
  144.     // Position to use
  145.     FW_kTextAlignUseSpecifiedPos            =     0x0000,        // default
  146.     FW_kTextAlignUseCurrentPos                =    0x0100,
  147.     
  148.     FW_kPrivTextAlignUsePosMask                =    0x0F00
  149. };
  150.  
  151. //========================================================================================
  152. //    Text Box Alignment Options
  153. //========================================================================================
  154.  
  155. typedef unsigned short FW_TextBoxOptions;
  156.  
  157. enum
  158. {
  159.     // Horizontal justification
  160.     FW_kTextBoxJustifyLeft                    = 0x0000,        // default
  161.     FW_kTextBoxJustifyRight                    = 0x0001,
  162.     FW_kTextBoxJustifyHCenter                = 0x0002,
  163.     
  164.     FW_kPrivTextBoxHorzJusificationMask        = 0x000F,
  165.     
  166.     // Vertical jusitification
  167.     FW_kTextBoxJustifyTop                    = 0x0000,        // default
  168.     FW_kTextBoxJustifyBottom                = 0x0010,
  169.     FW_kTextBoxJustifyVCenter                = 0x0020,
  170.  
  171.     FW_kPrivTextBoxVertJusificationMask        = 0x00F0,
  172.     
  173.     // Should the text be clipped to the box?  If not, make sure the box is large enough
  174.     FW_kTextBoxNoClipToBox                    = 0x0000,
  175.     FW_kTextBoxClipToBox                    = 0x0100,    // default
  176.  
  177.     // The options below apply only if the following flag is not set
  178.     FW_kTextBoxSingleLine                    = 0x0200,
  179.     
  180.     // Word wrapping and breaking options
  181.     FW_kTextBoxWordWrap                        = 0x0400,
  182.     FW_kTextBoxWordBreak                    = 0x0800
  183. };
  184.  
  185. enum FW_Side
  186. {
  187.     FW_kSideTop        = 0x0001,
  188.     FW_kSideBottom    = 0x0002,
  189.     FW_kSideLeft    = 0x0004,
  190.     FW_kSideRight    = 0x0008
  191. };
  192.  
  193. enum FW_Direction
  194. {
  195.     FW_kDirNone            = 0x0000,
  196.     FW_kDirTopCenter    = FW_kSideTop,
  197.     FW_kDirTopRight        = FW_kSideTop | FW_kSideRight,
  198.     FW_kDirCenterRight    = FW_kSideRight,
  199.     FW_kDirBottomRight    = FW_kSideBottom | FW_kSideRight,
  200.     FW_kDirBottomCenter    = FW_kSideBottom,
  201.     FW_kDirBottomLeft    = FW_kSideBottom | FW_kSideLeft,
  202.     FW_kDirCenterLeft    = FW_kSideLeft,
  203.     FW_kDirTopLeft        = FW_kSideTop | FW_kSideLeft
  204. };
  205.  
  206. //========================================================================================
  207. // Icon drawing
  208. //========================================================================================
  209. //    [HLX] I can't use <Icons.h> because of ODFrc
  210.  
  211. enum FW_RenderIconAlignment
  212. {
  213.     FW_kIconAlignNone                    = 0x0000,
  214.     FW_kIconAlignVCenter                = 0x0001,
  215.     FW_kIconAlignTop                    = 0x0002,
  216.     FW_kIconAlignBottom                    = 0x0003,
  217.     FW_kIconAlignHCenter                = 0x0004,
  218.     FW_kIconAlignCenter                    = FW_kIconAlignHCenter,
  219.     FW_kIconAlignAbsoluteCenter            = FW_kIconAlignVCenter | FW_kIconAlignHCenter,
  220.     FW_kIconAlignCenterTop                = FW_kIconAlignTop | FW_kIconAlignHCenter,
  221.     FW_kIconAlignCenterBottom            = FW_kIconAlignBottom | FW_kIconAlignHCenter,
  222.     FW_kIconAlignLeft                    = 0x0008,
  223.     FW_kIconAlignCenterLeft                = FW_kIconAlignVCenter | FW_kIconAlignLeft,
  224.     FW_kIconAlignTopLeft                = FW_kIconAlignTop | FW_kIconAlignLeft,
  225.     FW_kIconAlignBottomLeft                = FW_kIconAlignBottom | FW_kIconAlignLeft,
  226.     FW_kIconAlignRight                    = 0x000C,
  227.     FW_kIconAlignCenterRight            = FW_kIconAlignVCenter | FW_kIconAlignRight,
  228.     FW_kIconAlignTopRight                = FW_kIconAlignTop | FW_kIconAlignRight,
  229.     FW_kIconAlignBottomRight            = FW_kIconAlignBottom | FW_kIconAlignRight
  230. };
  231.  
  232. typedef unsigned short FW_RenderIconTransform;
  233.  
  234. enum
  235. {    
  236.     FW_kIconTransformNone                    =    0x0000,        //    kTransformNone,
  237.     FW_kIconTransformDisabled                =     0x0001,        //    kTransformDisabled,
  238.     FW_kIconTransformOffline                =     0x0002,        //    kTransformOffline,
  239.     FW_kIconTransformOpen                    =     0x0003,        //    kTransformOpen,
  240.     FW_kIconTransformSelected                =     0x4000        //    kTransformSelected
  241. };
  242.  
  243. #endif // SLGCONST_H
  244.